import java.util.HashSet;
import java.util.Set;

class Solution {
    // public boolean containsDuplicate(int[] nums) {
    //     Map<Integer, Integer> hash = new HashMap<>();
    //     int n = nums.length;
    //     for (int i = 0; i < n; i++) {
    //         // 看当前元素是否出现过
    //         if (hash.containsKey(nums[i])) {
    //             return true; // 出现过
    //         }
    //         hash.put(nums[i], 1);
    //     }
    //     return false;
    // }

    // 优化解法
    public boolean containsDuplicate(int[] nums) {
        Set<Integer> hash = new HashSet<>();
        for (int x : nums) {
            // 看当前元素是否出现过
            if (hash.contains(x)) {
                return true;
            }
            hash.add(x);
        }
        return false;
    }
}